package com.ltkj.ticket.service;

import java.util.List;
import com.ltkj.ticket.domain.TicScenicStock;
import com.ltkj.ticket.domain.TicType;
import com.ltkj.ticket.domain.dto.TicScenicQueryDTO;
import com.ltkj.ticket.domain.dto.TicScenicStockAddDTO;
import com.ltkj.ticket.domain.dto.TicScenicUpdateDTO;
import com.ltkj.ticket.domain.vo.TicScenicDetailVo;
import com.ltkj.ticket.domain.vo.TicScenicPageVo;

/**
 * 景区门票库存Service接口
 * 
 * @author ruoyi
 * @date 2023-08-31
 */
public interface ITicScenicStockService 
{
    /**
     * 查询景区门票库存
     * 
     * @param scenicStockId 景区门票库存主键
     * @return 景区门票库存
     */
    public TicScenicStock selectTicScenicStockByScenicStockId(Long scenicStockId);

    /**
     * 查询景区门票库存列表
     * 
     * @param ticScenicStock 景区门票库存
     * @return 景区门票库存集合
     */
    public List<TicScenicStock> selectTicScenicStockList(TicScenicStock ticScenicStock);

    /**
     * 新增景区门票库存
     * 
     * @param ticScenicStock 景区门票库存
     * @return 结果
     */
    public int insertTicScenicStock(TicScenicStock ticScenicStock);

    /**
     * 修改景区门票库存
     * 
     * @param ticScenicStock 景区门票库存
     * @return 结果
     */
    public int updateTicScenicStock(TicScenicStock ticScenicStock);

    /**
     * 批量删除景区门票库存
     * 
     * @param scenicStockIds 需要删除的景区门票库存主键集合
     * @return 结果
     */
    public int deleteTicScenicStockByScenicStockIds(Long[] scenicStockIds);

    /**
     * 删除景区门票库存信息
     * 
     * @param scenicStockId 景区门票库存主键
     * @return 结果
     */
    public int deleteTicScenicStockByScenicStockId(Long scenicStockId);

    /**
     * 新增景区门票库存
     *
     * @param addDTO 景区门票库存
     * @return 结果
     */
    int insertTicScenicStockNew(TicScenicStockAddDTO addDTO);

    /**
     * 查询景区门票库存
     *
     * @param queryDTO 景区门票库存主键
     * @return 景区门票库存
     */
    List<TicScenicPageVo> selectTicScenicList(TicScenicQueryDTO queryDTO);

    /**
     * 修改景区门票库存
     *
     * @param updateDTO 景区门票库存
     * @return 结果
     */
    int updateTicScenicStockNew(TicScenicUpdateDTO updateDTO);

    /**
     * 查询景区门票库存列表
     *
     * @param scenicStockId 景区门票库存
     * @return 景区门票库存集合
     */
    TicScenicDetailVo selectTicScenicStockByScenicStockIdNew(Long scenicStockId);

    List<TicType> selectType();
}
